A typical computer system includes at least a microprocessor and some form of memory. The microprocessor has, among other components, arithmetic, logic, and control circuitry that interpret and execute instructions necessary for the operation and use of the computer system. FIG. 1 shows a typical computer system (10) having a microprocessor (12), memory (14), integrated circuits (16) that have various functionalities, and communication paths (18, 20), i.e., buses and wires, that are necessary for the transfer of data among the aforementioned components of the computer system (10).
A rate of transfer of data is known as “bandwidth.” Bandwidth affects overall system performance. FIG. 2 shows integrated circuits (16A, 16B) connected by a bus (20). Typically, to increase the bandwidth between integrated circuits (16A, 16B), the number of pins associated with the integrated circuits (16A, 16B) are increased and the bus (20) is widened, e.g., a sixty-four bit bus is increased to a one hundred twenty-eight bit bus. However, the increase in the number of pins associated with the integrated circuits (16A, 16B) and/or the increase in the width of the bus (20) increases system costs with respect to area, power consumption, and pin count.
Because of the system costs associated with increasing bus size, maximizing the amount of bandwidth that is available becomes increasingly important. FIG. 3 shows a set of data lines and a clock line in a bus. The bus (20) includes a set of data lines (30) and a clock line (32). The set of data lines (30) carry packets of data in the form of a data signal to a receiver (not shown). The clock line (32) carries a timing signal to the receiver, in order for the receiver to have a time reference to sample the data signals.
In this design, the timing signal is integral to the proper functioning of the integrated circuits (16A, 16B). Timing uncertainty introduced from various sources can affect the proper sampling of data signals. Timing uncertainty may be skew or jitter. Skew is a result of unequal line lengths and variations in delay. Skew results from variations in the manufacture of integrated circuits, printed circuit boards, and components. Jitter is typically a result of signal amplitude noise and power supply noise that may result from voltage, switching frequency, and temperature variations. Both skew and jitter may contribute to timing uncertainty; thereby affecting data transmission.